1、Lidar basics1.1、Overview1.2、SLAM lidar components1.2.1、Laser1.2.2、Receiver1.2.3、Signal processing unit1.2.4、Rotating mechanism1.3、Principle of single-line lidar1.3.1、Triangular Ranging Method1、Direct shot2、Oblique shot1.3.2、TOF Ranging Method1.4、Lidar A1M81.5、Application scenario1.6、Using of A1M81.6.1、Build rplidar ros package1.6.2、Run rplidar ros package1.6.3、Remapping the USB serial port
SLAM Lidar tutorials: https://www.slamtec.com/en/Support
SLAM Lidar Technical Support E-mail:support@slamtec.com
Lidar wiki:http://wiki.ros.org/rplidar
Lidar SDK:https://github.com/Slamtec/rplidar_sdk
Lidar ROS:https://github.com/Slamtec/rplidar_ros
Lidar tutorials:https://github.com/robopeak/rplidar_ros/wiki
Single-line lidar refers to a single-line laser beam emitted by the laser source. It is divided into triangular ranging and TOF lidar. It is mainly used in the field of robotics.
Its scanning speed is fast, the resolution is strong, and the reliability is high. Compared with the multi-line lidar, the single-line lidar reacts more quickly in angular frequency and sensitivity, so it is more accurate in the distance and accuracy of obstacle distance measurement.
SLAM single-line lidar as an example, which is mainly composed of 4 core components: laser, receiver, signal processing unit and rotating mechanism.
The laser is the laser emitting mechanism of the lidar. During work, it will light up in pulses. The RPLIDAR A3 series SLAM lidar will turn on and off 16000 times per second.
After the laser emitted by the laser hits the obstacle, the reflected light will be converged on the receiver through the lens group through the reflection of the obstacle.
The signal processing unit is responsible for controlling the emission of the laser and processing the signal received by the receiver. Based on this information, the distance information of the target object is calculated.
The rotating mechanism is responsible for rotating the above-mentioned core components at a stable speed, so as to realize the scanning of the plane and generate real-time plan information.
Working principle of the single-line mechanical rotating mechanism lidar, as shown below.
According to the angular relationship between the incident beam and the surface normal of the measured object, the laser triangulation method can be divided into two types: oblique and direct.
SLAM RPLIDAR series lidar uses the oblique laser triangulation ranging method.
TOF lidar is based on measuring the flight time of light to obtain the distance of the target. Its working principle is mainly expressed as a laser transmitter sends out a modulated laser signal, the modulated light is reflected by the measured object and then received by the laser detector. The distance to the target can be calculated by measuring the phase difference between the emitted laser and the received laser. .
It can be seen from the figure above that parameters such as measurement radius, sampling speed, rotation speed, and angular resolution are important information of lidar performance.
Information | Description |
---|---|
Ranging radius | Radar measurement range |
Ranging sampling rate | How many ranging outputs are performed in one second |
Scanning frequency | How many scans the radar does in one second |
Angular resolution | Angular steps of two adjacent ranging |
Measurement resolution/accuracy | Can perceive the minimum distance change |
Clone this project to your catkin's workspace src folder
Run catkin_make to build rplidarNode and rplidarNodeClient
View the permissions of the rplidar serial port:
ls -l /dev |grep ttyUSB
Add write permission:(such as /dev/ttyUSB0)
xxxxxxxxxx
sudo chmod 666 /dev/ttyUSB0
There are two ways to run the rplidar ros package
xxxxxxxxxx
roslaunch rplidar_ros view_rplidar.launch
You can see rplidar scan results in the rviz
xxxxxxxxxx
roslaunch rplidar_ros rplidar.launch
rosrun rplidar_ros rplidarNodeClient
You can see rplidar scan results in the console
In the path of rplidar_ros function package, install USB port remapping:
xxxxxxxxxx
./scripts/create_udev_rules.sh
Input following command to modify re-mapping:
xxxxxxxxxx
ls -l /dev | grep ttyUSB
After changing the USB port remapping, we need to change the startup file about the serial_port value.